package city.spring.modules.work.entity;

import city.spring.configure.mybatis.FillCurrentUser;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 实体类：工作交接班记录、交班记录
 *
 * @author 侯坤林
 * @date 2020-09-09 14:39:16
 */
@Data
@TableName("work_shift_record")
public class WorkShiftRecordEntity implements Serializable {

    /**
     * 主键ID
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /**
     * 当前记录所在的组织机构
     */
    @FillCurrentUser(value = FillCurrentUser.Type.OrgId)
    @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.NEVER)
    private String currentOrgId;

    /**
     * 记录区域
     */
    private String area;

    /**
     * 交班日期
     */
    private LocalDate date;

    /**
     * 实有人数
     */
    private Integer peopleNum;

    /**
     * 异常情况
     */
    private String exceptionText;

    /**
     * 出院
     */
    private String leaveHospital;

    /**
     * 新入住老人
     */
    private String checkIn;

    /**
     * 外出就诊
     */
    private String goOutSeeDoctor;

    /**
     * 转出
     */
    private String transferOut;

    /**
     * 转入
     */
    private String transferIn;

    /**
     * 白班-交班人
     */
    private String dayPreUserId;

    /**
     * 白班-接班人
     */
    private String dayNextUserId;

    /**
     * 白班-交班人的班次
     */
    private String dayPreScheduleItemId;

    /**
     * 白班-接班人的班次
     */
    private String dayNextScheduleItemId;

    /**
     * 白班-入住长者相关事项
     */
    private String dayCheckInText;

    /**
     * 白班-设施设备相关事项
     */
    private String dayDeviceText;

    /**
     * 白班-其他事项
     */
    private String dayOtherText;

    /**
     * 夜班-交班人
     */
    private String nightPreUserId;

    /**
     * 夜班-接班人
     */
    private String nightNextUserId;

    /**
     * 夜班-交班人的班次
     */
    private String nightPreScheduleItemId;

    /**
     * 夜班-接班人的班次
     */
    private String nightNextScheduleItemId;

    /**
     * 夜班-入住长者相关事项
     */
    private String nightCheckInText;

    /**
     * 夜班-设施设备相关事项
     */
    private String nightDeviceText;

    /**
     * 夜班-其他事项
     */
    private String nightOtherText;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 创建时间
     */
    private LocalDateTime gmtCreated;

    /**
     * 更新时间
     */
    private LocalDateTime gmtModified;
}